A camera creates a record of a three-dimensional (3D) physical scene with a two-dimensional (2D) image. The image may be recorded on a film or as a digital 2D array of pixel values. Computer-based animation techniques often involve capturing a series of images of an actor (or other object) with one or more cameras, which may have different viewing perspectives. The images from these cameras can be combined to generate a three-dimensional (3D) graphical representation of the actor that can be applied to an animated character and placed in a computer-generated 3D scene.
In order for the 3D representation and location of the character in the 3D scene to be accurate, the location of the camera must be able to be accurately reproduced. Towards this end, each camera needs to be calibrated to the 3D graphical representation of the scene. Calibration of a camera to the scene includes determining the intrinsic parameters of the camera and the location of the camera within the scene. Current systems for imaging calibration are relatively slow and inaccurate. Typically an image of a known object (referred to as a calibration target, calibration apparatus, or just a target or apparatus) is captured and an animator manually maps the object's features to the corresponding computer graphics model to set the orientation of a virtual camera in the 3D model. Currently known calibration targets may include a known pattern, image or markings formed on one or more surfaces or edges of the target, such as a black and white checkerboad pattern on one or more surfaces of the target or edges that are painted different colors. Once a camera's parameters have been determined by a calibration operation, a calibration target may also serve as a reference for configuring a virtual camera in the 3D representation of the scene in order, in some examples, to create further images of the scene.
Calibrating a camera to a virtual scene, or configuring a virtual camera, using such test objects often requires the animator to manually perform multiple tasks, such as marking corners (or the virtual corners in a computer-displayed image of the object) or performing an initial approximate alignment of the camera to a virtual computer model. Such a manual process is both intrinsicly time consuming and prone to potential in accuracies. In addition, current available calibration systems are unable to concurrently capture camera position, rotation, distortion, and focal length. Knowing properties such as these can be useful in generating animations based on the original physical scene.